package main;

import data.Data;
import data.StaticData;

import algo.couterbased.Frequent;
import algo.couterbased.LossyCounting;
import algo.couterbased.SpaceSaving;
import algorithm.AbstractCounterBased;

public class RunCounterBased {
	
	public static void main(String[] args){
		
		Data data = StaticData.DATA100k_50k;
		int[] stream = data.getItems();
		int maxScale = data.getMaxScale();
	
		AbstractCounterBased frequent = new Frequent();
		AbstractCounterBased lossy = new LossyCounting();
		AbstractCounterBased space = new SpaceSaving();
		
		frequent.run(stream, maxScale);
		frequent.run(stream, maxScale);
		
		lossy.run(stream, maxScale);
		lossy.run(stream, maxScale);
		
		space.run(stream, maxScale);
		space.run(stream, maxScale);
		
		
	}
}
